package com.example.emos.api.exception;

import lombok.Data;


/**
 * 自定义异常，处理异常的时候可以根据异常的类型，判断出哪些是Java语言异常，
 * 哪些是业务异常，在本项目中，我们也自定义了异常类
 * 这个异常类里面封装了两样东西：异常消息和状态码
 */
@Data
public class EmosException extends RuntimeException {
    private String msg;
    private int code = 500;

    //异常消息
    public EmosException(String msg) {
        super(msg);
        this.msg = msg;
    }

    public EmosException(String msg, Throwable e) {
        super(msg, e);
        this.msg = msg;
    }
    //状态码
    public EmosException(String msg, int code) {
        super(msg);
        this.msg = msg;
        this.code = code;
    }

    public EmosException(String msg, int code, Throwable e) {
        super(msg, e);
        this.msg = msg;
        this.code = code;
    }

}